// 试图解释如下代码为何是正确的
class MyString extends String {}
let x: object = new MyString('hello')

// 解释：MyString 是 String 的子类，String 的祖先类是Object，所以 MyString 的实例也是一个字面对象类型，符合 object 类型的要求

// =============================================================================

// 说明如下两种声明有什么异同
const x1: 'abc' = 'abc'
let x2: 'abc' = 'abc'

// const 声明的变量不能重新赋值，而 let 声明的变量可以重新赋值，其他都一样